#include "BulletCollision/CollisionShapes/btBox2dShape.h"
#ifdef __cplusplus
extern "C" {
#endif
btBox2dShape* bullet_NewbtBox2dShape(btVector3* boxHalfExtents){
	btVector3 const& c_arg_boxHalfExtents=(btVector3 const&)(*boxHalfExtents);
	btBox2dShape* wrap_out = new btBox2dShape(c_arg_boxHalfExtents);
	return wrap_out;
}

btVector3* bullet_btBox2dShape_getCentroid(btBox2dShape* c_this){
	btVector3 const& c_out = c_this->getCentroid();
	btVector3* wrap_out = (btVector3*)(&c_out);
	return wrap_out;
}

btVector3* bullet_btBox2dShape_getHalfExtentsWithMargin(btBox2dShape* c_this){
	btVector3 c_out = c_this->getHalfExtentsWithMargin();
	btVector3* wrap_out = new btVector3(c_out);
	return wrap_out;
}

btVector3* bullet_btBox2dShape_getHalfExtentsWithoutMargin(btBox2dShape* c_this){
	btVector3 const& c_out = c_this->getHalfExtentsWithoutMargin();
	btVector3* wrap_out = (btVector3*)(&c_out);
	return wrap_out;
}

btVector3* bullet_btBox2dShape_getNormals(btBox2dShape* c_this){
	btVector3 const * c_out = c_this->getNormals();
	btVector3* wrap_out = (btVector3*)(void*)(c_out);
	return wrap_out;
}

int bullet_btBox2dShape_getVertexCount(btBox2dShape* c_this){
	int c_out = c_this->getVertexCount();
	int wrap_out = (c_out);
	return wrap_out;
}

btVector3* bullet_btBox2dShape_getVertices(btBox2dShape* c_this){
	btVector3 const * c_out = c_this->getVertices();
	btVector3* wrap_out = (btVector3*)(void*)(c_out);
	return wrap_out;
}

#ifdef __cplusplus
}
#endif
